Vuetify 3 Package 器组件 prop

您所在的位置:网站首页 vuetify组件v- message Vuetify 3 Package 器组件 prop

Vuetify 3 Package 器组件 prop

2023-04-05 10:48| 来源: 网络整理| 查看: 265

所以我正在考虑将一些Vuetify组件 Package 到我自己的自定义组件中,这样我就可以更好地控制整个应用程序的外观。我遇到的问题是,我希望为Vuetify组件提供“默认”属性,这很好,但是当我在使用组件时添加属性时,这些“覆盖”属性没有被使用。Vue 3.2.38、Vuetify 3.1.10自定义组件:

{{ name }} import { defineComponent } from 'vue'; import { VTextField } from 'vuetify/components/VTextField'; export default defineComponent({ name: 'EmailField', extends: VTextField, props: { name: { type: String, default: '' } }, computed: { defaultProps() { return { color: 'yellow', bgColor: '#252836', variant: 'outlined', density: 'compact' }; } } });

消耗组件:

.......other template items import { defineComponent, defineAsyncComponent } from 'vue'; export default defineComponent({ components: { EmailField: defineAsyncComponent(() => import('@/components/custom/email-text-field.vue')) } });

所以默认的 prop 我在组件中设置的(defaultProps)工作正常,并正确应用于Vuetify。当使用组件时出现问题,我传递props来覆盖默认组件props。它们始终使用默认props,而消费者端的传入props没有被使用。如果我试图覆盖我的defaultProps对象中的值,那么它就不起作用。如果我使用了一个我还没有在defaultProps中设置的prop,那么它就可以正常工作。所以我猜我需要一种方法来解析prop并确定实际应用的是哪一个?我意识到这可能是一件很坚韧做的事情,但似乎这会是一种常见的情况。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3